The present invention relates to apparatus and methods for establishing data communication between a multiplicity of spaced locations. More particularly, the present invention relates to systems and apparatus for allowing a plurality of electronic units to establish data transmission and/or reception between those units. Although not necessarily limited thereto, the present invention is useful in establishing multiple bit data communications for discrete but spaced electronic systems, subsystems and the like which require data interfacing. That is, the present invention is useful in establishing parallel data interconnections between multiple data processing units, multiple memory units, the various elements internal to a data processing unit such as are involved in so-called virtual processor systems, multiple control units or any of a wide variety of existing electronic systems and subsystems requiring data exchanges as well as various combinations of the aforementioned units.
A remarkably wide variety of systems and subsystems have been developed in the art of electronic data processing and handling. In order for such systems to realize the efficiency and speed of operation potentially available, means for rapidly effecting data exchanges between such units have become increasingly critical. For instance, the relatively self-contained early computers have given way to more sophisticated systems such as multiple processor systems which require access to multiple discrete data storage units. Yet another example of potential multiple data communication paths are in association with the varieties of data communication control units and supervisory elements which must handle data exchanges therewith. Thus, the use of separate hard wired interconnections from each unit to all other units which must exchange data has become prohibitive.
One prior art approach to resolving the hard wired data interfacing problem is the use of a single common but multiple wired bus between all units which must effect data exchanges with some means of allowing one of the parallel attached subsystems to transmit or receive data from that common bus. Such systems frequently employ time division multiplexing on the common bus wherein the particular unit is preassigned a specific time slot during which data can be transmitted or received. Yet other arrangements such as selector channels allow a unit to request that it be granted the common bus to the exclusion of the other units with some control circuitry to supervise which unit is allowed access at a given time. As a result, the efficiency of data transmission through the common bus is necessarily reduced since concurrent communications between multiple stations is not possible.
Current data busses have the disadvantages that they are expensive and relatively slow. The direct hardwiring of such systems could be implemented through coax or fiber optics but the cost of fabricating such systems is prohibitive where parallel paths are necessary to increase the rate of data transfer. A complex digital system may be viewed as a collection of devices [e.g.: processors, memories, etc.] interconnected by switches. These switches have two significant parameters in speed as to the data transfer rate and in concurrency as to the number of separate conversations among devices which can be supported.
Some prior art time division multiplexing systems increase concurrency of the switch by sacrificing speed. They require the various conversations among devices to occur at different times. Despite the disadvantages, time-multiplex bus systems are frequently used as the input-output device switch in existing digital computer systems. Current technology limits the speed of switches to about 10 to the 8th power transfers per second with rapidly increaing difficulty of implementation for speeds above 10 to the 7th power transfers per second. Thus for speeds of 10 to the 7th power transfers per second or greater, time division multiplexing is virtually ruled out as a technique for generating concurrency and a more complex and more expensive switch must be used.
A common need for high concurrency switches exists in connection with multiple processor and multiple memory systems. In such applications, several processors may attempt to access data in several memories with only one such communication link being allowed at a given time. A system of N processors communicating with N memories via W-bit word transfers requires a switch of concurrency N to prevent lockout of processors by the switch. If the switch is located at one central location, then it requires N.W wires coming into it with the processors and the same number from the memories. If the switch is distributed throughout the system, there is still a "cut" of the system [a hypothetical plane which separates the system into component parts] which crosses N.W wires. It is predominantly the cost of connecting these wires that makes the price of high concurrency switches unreasonable. Thus there is a continuing need for a more economical way of implementing communication interconnections inexpensively.
In considering an optical switch, one approach is to model the optical system after existing systems while attempting to overcome some of the existing system limitations. A fiber system can be used in a similar manner to present systems and cross talk can be expected to be lower and system transfer rate expected to be slightly higher. There are many problems and drawbacks associated with such systems.
For instance, introduction of energy into fibers can be difficult. If light emitting diodes (LED) are used, the light is emitted into a wide cone even with a lens on the LED which results in a small fraction of the power actually being introduced into the fiber. Laser diodes could be used as high energy, high directivity sources but they are slower, more expensive and have a shorter life span. Coupling energy from the line for time-multiplex operation presents additional problems. Fiber optic couplers have been built as mentioned above, but the losses incurred by selecting light at each device requires more powerful and usually slower LEDs or more sensitive detectors or both. In addition, the couplers may introduce reflections which could be transferred to improper detectors.
The requirement for couplers assumes a time-multiplex system. A high concurrency approach could be used by letting each device have a separate fiber optic line to every other device. This solves some problems, particularly since each LED must illuminate only one detector through the fiber. Hence, low power LEDs and fast detectors could be employed. Unfortunately, the large number of interconnections for high concurrency switches creates even more severe problems for fiber optics than for conductive wires since each light guide must be carefully coupled to its devices.
It has been known in the past that light emitting devices and light sensitive devices can be arranged so as to provide communications between units. Although the light coupling elements have been used for electrical isolation between units requiring data exchanges such as in U.S. Pat. No. 3,888,772 by Neuner, such elements have likewise been used for other purposes such as in the switching matrix configuration of U.S. Pat. No. 3,078,373 by Wittenberg. There have been some efforts to employ light coupled systems for data communications between different locations. For instance, U.S. Pat. No. 3,851,167 by Levine shows an in-line receive/transmit repeater for a fiber optic cable transmission system. Other data communication systems have used various forms of optical modulation and demodulation for data communication such as in the systems shown in U.S. Pat. Nos. 3,652,858 by Kinsel and 3,899,430 by Ancker-Johnson, the latter including a laser originated closed light loop between transceiver stations. Another time-division multiplexed optical communication system including a closed loop synchronization arrangement for the optical path at the receiving station is shown in U.S. Pat. No. 3,699,344 by Rutz. Still others have suggested that lens arrangements can be used to select particular receiving detectors from transmitted light beams as in U.S. Pat. Nos. 3,679,904 Weiner and 3,739,173 by Broussaud.
In the prior art optical data communication systems, the interfacing requires relatively sophisticated modulation/demodulation apparatus and data conversion devices in order to present the data to the communicating unit requiring it. Further, many such systems suffer from essentially the same disadvantages as hard wired common bus systems since they are effectively time division multiplex dependent. Accordingly, there has been a continuing need for a data interfacing system which requires minimal modification to the existing data processing or handling units demanding the data exchanges and further with minimal apparatus associated with establishing the transmission/reception interface at each location. Still further, there has been a continuing demand for a data communication bus system which allows concurrent data exchanges between various combinations of units while avoiding the necessity for large numbers of hard wired interconnections.